Java 8 foreach

10.【推荐】使用entrySet遍历Map类集合KV,而不是keySet方式进行遍历。 说明:keySet其实是遍历了2次,一次是转为Iterator对象,另一次是从hashMap中取出key所对应的value。而entrySet只是遍历了一次就把key和value都放到了entry中,效率更高。如果是JDK8,使用Map.foreach方法。 正例:values()返回的是V值集合,是一个list集合对象;keySet()返回的是K值集合,是一个Set集合对象;entrySet()返回的是K-V值组合集合。

其他部分借鉴:http://blog.csdn.net/wtljiayou/article/details/53638284

以前我们在遍历Map的时候通常使用如下方式:

Map<String, Integer> items = new HashMap<>();
items.put("A", 10);
items.put("B", 20);
items.put("C", 30);
items.put("D", 40);
items.put("E", 50);
items.put("F", 60);

for (Map.Entry<String, Integer> stringIntegerEntry : items.entrySet()){
    System.out.println("key:" + stringIntegerEntry.getKey() + ";value:" + stringIntegerEntry.getValue());
}

其结果如下:

key:A;value:10
key:B;value:20
key:C;value:30
key:D;value:40
key:E;value:50
key:F;value:60

从JDK8开始,可以使用如下的方式进行遍历:

Map<String, Integer> items = new HashMap<>();
items.put("A", 10);
items.put("B", 20);
items.put("C", 30);
items.put("D", 40);
items.put("E", 50);
items.put("F", 60);

items.forEach((k, v) -> System.out.println("key:" + k + ";value:" + v));

其结果如下:

key:A;value:10
key:B;value:20
key:C;value:30
key:D;value:40
key:E;value:50
key:F;value:60
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值